package com.yenlien.traceyun.control.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yenlien.traceyun.webase.entity.BaseEntity;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author jialong
 * @date 2021/04/27
 * @description: 广告
 **/
@Data
@Entity
@Table(name = "t_advert")
public class Advert extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 1157606464664957694L;

    /**
     * 广告标题
     */
    @Column
    @NotBlank(message = "标题不能为空")
    private String title;

    /**
     * 内容
     */
    @Column
    private String content;

    /**
     * 图片, 多个用 ; 分割
     */
    @Column
    private String img;

    /**
     * 广告类型(图片或文字等)   1=图片   2=文字
     */
    @Column
    @NotBlank(message = "类型不能为空")
    private String type;

    /**
     * 发送对象，多个用 , 隔开,  因为公司名唯一所以直接用公司名
     */
    @Column
    @NotBlank(message = "发送对象不能为空")
    private String sendObj;

    @Column
    private String sendObjName;

    /**
     * 开始投放时间
     */
//    @Column
//    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")  // 该方式使用json传参就会出错,转换工具是spring默认使用的jackson
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    private LocalDateTime useStartTime;
//
//    /**
//     * 投放结束时间
//     */
//    @Column
//    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    private LocalDateTime useEndTime;

    /**
     * 是否启用的状态  1=启用,  2=禁止
     */
    @Column
    private String state;

    @Column
    private String name;

    /**
     * 创建时间
     */
    @Column
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime = LocalDateTime.now();

}
